export function pySort(arr, empty) {
  var $this = this;
  if (!String.prototype.localeCompare)
    return null;
  var letters = "ABCDEFGHJKLMNOPQRSTWXYZ".split('');
  var zh = "阿八嚓哒妸发旮哈讥咔垃痳拏噢妑七呥扨它穵夕丫帀".split('');
  var arrList = [];
  for (var m = 0; m < arr.length; m++) {
    arrList.push(arr[m].name);
  }
  var result = [];
  var curr;
  for (var i = 0; i < letters.length; i++) {
    curr = {
      letter: letters[i],
      data: []
    };
    if (i != 26) {
      for (var j = 0; j < arrList.length; j++) {
        var initial = arrList[j].charAt(0); //截取第一个字符
        if (arrList[j].charAt(0) == letters[i] || arrList[j].charAt(0) == letters[i].toLowerCase()) { //首字符是英文的
          curr.data.push(arrList[j]);
        } else if (zh[i] != '*' && $this.isChinese(initial)) { //判断是否是无汉字,是否是中文
          if (initial.localeCompare(zh[i]) >= 0 && (!zh[i + 1] || initial.localeCompare(zh[i + 1]) < 0)) { //判断中文字符在哪一个类别
            curr.data.push(arrList[j]);
          }
        }
      }
    } else {
      for (var k = 0; k < arrList.length; k++) {
        var ini = arrList[k].charAt(0); //截取第一个字符
        if (!$this.isChar(ini) && !$this.isChinese(ini)) {
          curr.data.push(arrList[k]);
        }
      }
    }
    if (empty || curr.data.length) {
      result.push(curr);
      //curr.data.sort(function(a,b){
      //    return b.localeCompare(a);       //排序,英文排序,汉字排在英文后面
      //});
    }
  }
  return result;
}
